import { useUserStore } from '@/stores/user'
import { ElMessage } from 'element-plus'

const message = (msg: string, grouping = true) => {
  ElMessage({
    message: msg,
    type: 'error',
    grouping,
  })
}

const errorHandle = (res: any, err: any) => {
  const userStore = useUserStore()
  if (err) {
    if (err.config.url === '/auth/login/loginOut') return
    if (err.response && err.response.status === 401) {
      message('授权状态已过期，请重新登录授权')
      userStore.logout()
    } else if (err.response && err.response.status === 403) {
      message('无权限操作，请联系管理员开通权限')
    } else if (err.response && err.response.status === 500) {
      if (err.response.data.message) {
        message(err.response.data.message)
      } else {
        message('服务器发生异常，请联系管理员')
      }
    } else {
      message('网络异常，请检查网络或联系管理员')
    }
  } else {
    if (res.data && res.data.message) {
      message(res.data.message)
    } else {
      // message('未知错误')
    }
  }
}

export default errorHandle
